home *** CD-ROM | disk | FTP | other *** search
/ PC-Blue - MS DOS Public Domain Library / PC-Blue MS-DOS Public Domain Library - NYACC.iso / vol039 / history.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1987-01-11  |  19.5 KB  |  349 lines

  1. 10  CLS:KEY OFF:PRINT TAB(15)STRING$(10,205);"  MYPRO Inc  Teaching division  ";STRING$(10,205):PRINT
  2. 20  PRINT TAB(18)"Independently supported student training group":PRINT:PRINT STRING$(79,"$")
  3. 30  PRINT "$";TAB(79)"$"
  4. 40  PRINT "$   These programs are courtesy of the Students of  MYPRO inc teaching group  $"
  5. 50  PRINT "$   The teaching group is solely supported by the instructors and  donations  $
  6. 60  PRINT "$   from fellow computerist.  If you like these  programs please  contribute  $"
  7. 70  PRINT "$   ($5.00 suggested) Send contributions to :-";TAB(79)"$":PRINT "$";TAB(79)"$"
  8. 80  PRINT "$";TAB(35)"MYPRO Inc";TAB(79)"$":PRINT "$";TAB(33)"P.O.Box 4463";TAB(79)"$":PRINT "$";TAB(31)"Anaheim CA.92801";TAB(79)"$":PRINT "$";TAB(79)"$"
  9. 90  PRINT "$               Regardless of whether you make a contribution,                $"
  10. 100  PRINT "$             you are encouraged to copy and share this program.              $
  11. 110  PRINT "$";TAB(79)"$":PRINT STRING$(79,"$"):LOCATE 23,1
  12. 120  PRINT "Press C for Mypro's Catalog.";TAB(53)"Hit any key to continue...":Y$=INPUT$(1):IF Y$="C" OR Y$="c" THEN 130 ELSE 390
  13. 130  CLS:LOCATE 3,25:COLOR 15:PRINT "M Y P R O ' S      C A T A L O G":COLOR 7:OPEN "CATALOG.ASC" FOR INPUT AS #1
  14. 140  LOCATE 13,16:PRINT "Do you wish Catalog to print on ";:COLOR 31:PRINT "S";:COLOR 7:PRINT "creen or ";:COLOR 31:PRINT "P";:COLOR 7:PRINT "rinter  ";
  15. 150  Y$=INKEY$:IF Y$="" OR LEN(Y$)>1 THEN 150
  16. 160  IF Y$="S" OR Y$="s" THEN CON=1:PAGELEN = 18:GOTO 220
  17. 170  IF Y$="P" OR Y$="p" THEN CON=2:PAGELEN = 54:PRINT Y$:GOTO 190
  18. 180  GOTO 150
  19. 190  LOCATE 16,22:PRINT "Do you want to pause for paper change ";:Y$=INPUT$(1):IF Y$="Y" OR Y$="y" THEN PRI=1
  20. 200  LOCATE 18,25:COLOR 15:PRINT "Is the Printer on and ready  (Y/N) ";
  21. 210  Y$=INPUT$(1):IF Y$="Y" OR Y$="y" THEN 230 ELSE 210
  22. 220  CLS:LOCATE 1,25:COLOR 15:PRINT "M Y P R O ' S     C A T A L O G":COLOR 7:PRINT STRING$(79,196):PRINT
  23. 230  IF CON=2 THEN LPRINT TAB(24) "M Y P R O ' S     C A T A L O G":LPRINT STRING$(79,95):LPRINT
  24. 240  FOR I= 1 TO PAGELEN
  25. 250  LINE INPUT #1,A$
  26. 260  IF EOF(1) THEN 300
  27. 270  IF CON=1 THEN PRINT TAB(4)A$ ELSE LPRINT TAB(4)A$
  28. 280  NEXT I:IF CON=2 THEN LPRINT CHR$(12)
  29. 290  IF PRI=1 THEN LOCATE 25,28:PRINT "Press any key to continue ";:Y$=INPUT$(1)
  30. 300  IF CON=1 THEN LOCATE 25,28:PRINT "Press any key to continue ";:Y$=INPUT$(1):CLS:LOCATE 1,25:COLOR 15:PRINT "M Y P R O ' S     C A T A L O G":COLOR 7:PRINT STRING$(79,196):PRINT
  31. 310  IF CON=2 AND A$<>"END" THEN LPRINT TAB(25) "M Y P R O ' S     C A T A L O G":LPRINT TAB(4)STRING$(79,95):LPRINT
  32. 320  IF EOF(1) THEN RUN ELSE LOCATE 25,1:PRINT SP$;:LOCATE 4,1:GOTO 240
  33. 330  '      *********************************************
  34. 340  '      *      Time warps into history Program      *
  35. 350  '      *         Basic Programming final           *
  36. 360  '      *        Written by Carl K. Wogomon         *
  37. 370  '      *********************************************
  38. 380  '
  39. 390  DEFINT A-Z:SP$=STRING$(79,32):KEY OFF:SQ$(1)="IA":SQ$(2)="FT":SQ$(3)="QP":SQ$(4)="ED":SQ$(5)="NS":SQ$(6)="EW":SQ$(7)="TW":SQ$(8)="EP"
  40. 400  DIM R(14),C(14),M$(14),M1$(14),M2$(14),B$(25,9),A(9,9):M1=1:KL=1
  41. 410  R(1)=5:C(1)=19:R(2)=7:C(2)=19:R(3)=9:C(3)=19:R(4)=11:C(4)=19:R(5)=13:C(5)=19:R(6)=15:C(6)=19:R(7)=17:C(7)=19
  42. 420  R(8)=5:C(8)=52:R(9)=7:C(9)=52:R(10)=9:C(10)=52:R(11)=11:C(11)=52:R(12)=13:C(12)=52:R(13)=15:C(13)=52:R(14)=17:C(14)=52
  43. 430  '--------------------------  Load Menu Data
  44. 440  OPEN "MENU.DAT" FOR INPUT AS #1
  45. 450  FOR I=1 TO 14
  46. 460  LINE INPUT #1,M$(I):LINE INPUT #1,M1$(I):LINE INPUT #1,M2$(I)
  47. 470  NEXT I:CLOSE
  48. 480  '-----------------------  Print Selection Screen
  49. 490  CLS:LOCATE 2,39:COLOR 15:PRINT "History":PRINT:PRINT
  50. 500  COLOR 31:PRINT TAB(18)M$(1);:COLOR 7:PRINT M1$(1);:COLOR 31:PRINT TAB(51)M$(8);:COLOR 7:PRINT M1$(8):PRINT
  51. 510  COLOR 31:PRINT TAB(18)M$(2);:COLOR 7:PRINT M1$(2);:COLOR 31:PRINT TAB(51)M$(9);:COLOR 7:PRINT M1$(9):PRINT
  52. 520  COLOR 31:PRINT TAB(18)M$(3);:COLOR 7:PRINT M1$(3);:COLOR 31:PRINT TAB(51)M$(10);:COLOR 7:PRINT M1$(10):PRINT
  53. 530  COLOR 31:PRINT TAB(18)M$(4);:COLOR 7:PRINT M1$(4);:COLOR 31:PRINT TAB(51)M$(11);:COLOR 7:PRINT M1$(11):PRINT
  54. 540  COLOR 31:PRINT TAB(18)M$(5);:COLOR 7:PRINT M1$(5);:COLOR 31:PRINT TAB(51)M$(12);:COLOR 7:PRINT M1$(12):PRINT
  55. 550  COLOR 31:PRINT TAB(18)M$(6);:COLOR 7:PRINT M1$(6);:COLOR 31:PRINT TAB(51)M$(13);M1$(13):PRINT
  56. 560  COLOR 31:PRINT TAB(18)M$(7);:COLOR 7:PRINT M1$(7);:COLOR 31:PRINT TAB(51)M$(14);:COLOR 7:PRINT M1$(14):PRINT
  57. 570  PRINT:COLOR 15:PRINT TAB(38)"Select  ";:COLOR 23:PRINT "_":COLOR 7
  58. 580  ' --------------------------- DRAW MENU BOX
  59. 590  R=1:C=15:CC=56:RC=19
  60. 600  CC1$=CHR$(201)+STRING$(CC,205)+CHR$(187) ' --- Top line
  61. 610  CC3$=CHR$(199)+STRING$(CC,196)+CHR$(182) ' --- Line under Heading
  62. 620  CC4$=CHR$(200)+STRING$(CC,205)+CHR$(188) ' --- Bottom Line
  63. 630  LOCATE R,C:PRINT CC1$
  64. 640  FOR I=R+1 TO R+RC:LOCATE I,C:PRINT CHR$(186) '---- Draws down lines
  65. 650  LOCATE I,C+CC+1:PRINT CHR$(186):NEXT I
  66. 660  LOCATE R+2,C:PRINT CC3$
  67. 670  LOCATE R+RC-1,C:PRINT CC3$
  68. 680  LOCATE I,C:PRINT CC4$:N=1
  69. 690  IF PP>0 THEN LOCATE R(PP),C(PP):PRINT M1$(PP) ' ----- Prints subject normal
  70. 700  LOCATE 23,1,0:PRINT SP$;:CC=(80-LEN(M2$(N)))/2+3:LOCATE 23,CC:PRINT M2$(N); '---- Prints Menu Explanation Line
  71. 710  LOCATE R(N),C(N):COLOR 0,7:PRINT M1$(N):COLOR 7'---- Prints subject inversed
  72. 720  '--------------------- Selection Input Routine
  73. 730  PP=N
  74. 740  Y$=INKEY$:IF Y$="" THEN 740
  75. 750  IF LEN(Y$)>1 THEN 820
  76. 760  IF ASC(Y$)=13 THEN 870
  77. 770  FOR J=1 TO 14
  78. 780  IF Y$=M$(J) THEN N=J:GOTO 870 '---- Checks for matching input
  79. 790  IF ASC(Y$)-32 =ASC(M$(J)) THEN N=J:GOTO 870 '---- Check for low case match
  80. 800  NEXT J:GOTO 740' ---- Error trap for input on Menu
  81. 810  ' ---------------------- Arrow input routine
  82. 820  Y=ASC(RIGHT$(Y$,1)):N=PP:CN=0:IF Y=72 AND N>1 THEN N=N-1:GOTO 690
  83. 830  IF Y=77 AND N<8 THEN N=N+7:GOTO 690
  84. 840  IF Y=80 AND N<14 THEN N=N+1:GOTO 690
  85. 850  IF Y=75 AND N>7 THEN N=N-7:GOTO 690
  86. 860  GOTO 740
  87. 870  ON N GOTO 880,890,900,910,920,930,940,950,960,970,980,990,1000,1010
  88. 880  FIL$="ONE":GOTO 1020
  89. 890  FIL$="TWO":GOTO 1020
  90. 900  FIL$="THREE":GOTO 1020
  91. 910  FIL$="FOUR":GOTO 1020
  92. 920  FIL$="FIVE":GOTO 1020
  93. 930  FIL$="SIX":GOTO 1020
  94. 940  RUN "QUEST"'---- Generate New Questions
  95. 950  FIL$="EIGHT":GOTO 1020
  96. 960  FIL$="NINE":GOTO 1020
  97. 970  FIL$="TEN":GOTO 1020
  98. 980  FIL$="ELEVEN":GOTO 1020
  99. 990  FIL$="TWELVE":GOTO 1020
  100. 1000  GOTO 2700 '--------Instructions
  101. 1010  CLS:LOCATE 12,32:PRINT "Have a nice day":END
  102. 1020  OPEN FIL$+".DAT" FOR INPUT AS #1
  103. 1030  LINE INPUT #1,SUB$:LINE INPUT #1,PER$
  104. 1040  FOR I=1 TO 25
  105. 1050  FOR J=1 TO 9
  106. 1060  LINE INPUT #1,B$(I,J)
  107. 1070  NEXT J
  108. 1080  NEXT I:CLOSE
  109. 1090  IF TEST=0 THEN 1160 ELSE 1240
  110. 1100  LOCATE 25,1:PRINT SP$;:LOCATE 25,30:PRINT "enter   ";:COLOR 31:PRINT "Y";:COLOR 7:PRINT "es    ";:COLOR 31:PRINT "N";:COLOR 7:PRINT "o";:LOCATE 23,1
  111. 1110  Y$=INKEY$:IF Y$="Y" OR Y$="y" THEN Y=1:RETURN ELSE IF Y$="N" OR Y$="n" THEN Y=2:RETURN ELSE 1110
  112. 1120  FOR R=20 TO 24:LOCATE R,1:PRINT SP$;:NEXT R:LOCATE 20,1:RETURN '---- Clears bottom of board
  113. 1130  FOR T=1 TO 800*SEC:NEXT T:RETURN
  114. 1140  CC=(80-LEN(MES$))/2:LOCATE R,CC:PRINT MES$;:RETURN '----  Centers Messages
  115. 1150  ' ----------------------------FIRST MENU
  116. 1160  CLS:LOCATE 5,34:COLOR 15:PRINT "Time Travel ":COLOR 7:PRINT:PRINT:TEST=1:YP=VAL(LEFT$(PER$,4)):YR=VAL(RIGHT$(PER$,4))-YP
  117. 1170  PRINT TAB(20)"An Educational Game of ";SUB$:PRINT
  118. 1180  PRINT TAB(20)"I will Timeport you to study the years":PRINT:PRINT TAB(29)"From ";PER$:PRINT
  119. 1190  PRINT TAB(20)"Enter your Name":PRINT:PRINT TAB(20)"Enter current year "
  120. 1200  FOR I=14 TO 64:LOCATE 3,I:PRINT CHR$(223):LOCATE 19,I:PRINT CHR$(220):NEXT:FOR I=3 TO 19:LOCATE I,14:PRINT CHR$(222):LOCATE I,64:PRINT CHR$(221):NEXT
  121. 1210  LOCATE 14,40:GOSUB 2620:A$=Z$:LOCATE 16,40:GOSUB 2620:Y2$=Z$:Y2=VAL(Y2$):YY=Y2:IF Y2<1900 THEN Y2=1900+Y2:YY=Y2
  122. 1220  RANDOMIZE (X)
  123. 1230  ' -------------------------TRAVEL BACK CLOCK
  124. 1240  YY=YP+INT(RND*YR+1):CLS:MES$=A$+" you are being transported back in time":R=10:GOSUB 1140
  125. 1250  FOR I=32 TO 49:LOCATE 12,I:PRINT CHR$(223):LOCATE 14,I:PRINT CHR$(220):NEXT:FOR I=12 TO 14:LOCATE I,31:PRINT CHR$(222):LOCATE I,50:PRINT CHR$(221):NEXT
  126. 1260  FOR I=Y2 TO YY STEP-5:LOCATE 13,36:PRINT"Year ";I:FOR T=1 TO 30:NEXT T:NEXT I:LOCATE 13,36:PRINT "Year ";YY:SEC=2:GOSUB 1130
  127. 1270  ' ------------------------START OF GAME
  128. 1280  CLS:A=5:B=8:D=8:R1=3:GOSUB 2450:MES$=SUB$+"  "+PER$:R=1:COLOR 15:GOSUB 1140:COLOR 7:G=1000:RO=0:COL=0:M1=0:CA=0:TR=0
  129. 1290  LOCATE 11,5,0:PRINT YY:LOCATE 11,62:PRINT USING "#### Gold Pieces";G
  130. 1300  R=21:MES$=A$+", you have arrived in the year "+STR$(YY):GOSUB 1140
  131. 1310  PRINT TAB(19)"Search the time portals for the Key of time.";:SEC=1:GOSUB 1130:GOTO  1360
  132. 1320  LOCATE 25,1:PRINT SP$;:LOCATE 25,29:PRINT"Press any key to continue";
  133. 1330  Y$=INKEY$:IF Y$=""THEN 1330 ELSE LOCATE 25,1:PRINT SP$;:RETURN
  134. 1340  QU$="":FOR I=1 TO LEN(E$):Y=ASC(MID$(E$,I,1)):IF Y>96 THEN Y=Y-32
  135. 1350  QU$=QU$+CHR$(Y):NEXT I:E$=QU$:RETURN
  136. 1360  C=INT(RND*8+1):D=INT(RND*8+1):A(C,D)=1
  137. 1370  A=A(C,D) '---- Reads value port
  138. 1380  ON A GOSUB 1700,1720,2000,2290,1820,1840,1850,1640
  139. 1390  IF KL=0 THEN 2330
  140. 1400  IF G<=0 THEN 1670 ' ----Check if Broke
  141. 1410  COL=C*5+17:RO=D*2+2:LOCATE RO,COL:COLOR 31:PRINT CHR$(157):COLOR 7 '---- Prints Position of time ship
  142. 1420  MES$="Your move "+A$:R=24:GOSUB 1140
  143. 1430  LOCATE 25,1:PRINT SP$;:LOCATE 25,8:COLOR 15:PRINT CHR$(24);:COLOR 7:PRINT" North     ";:COLOR 15:PRINT CHR$(25);:COLOR 7:PRINT" South      ";:COLOR 15:PRINT CHR$(26);:COLOR 7:PRINT" East      "; ' ---- Message Line # 25
  144. 1440  COLOR 15:PRINT CHR$(27);:COLOR 7:PRINT" West      ";:COLOR 15:PRINT"Esc";:COLOR 7:PRINT" Escape";
  145. 1450  LOCATE 11,5:PRINT YY:LOCATE 11,62:PRINT USING "####";G '---- Prints Gold amount
  146. 1460  Y$=INKEY$:IF Y$="" THEN 1460
  147. 1470  IF RO>1 AND COL>1 THEN LOCATE RO,COL:PRINT SQ$(A) '---- Prints Port type
  148. 1480  M1=M1+1:IF K=0 AND M1>70 THEN GOSUB 1320:GOTO 1920
  149. 1490  IF LEN(Y$)>1 THEN Y=ASC(RIGHT$(Y$,1)):GOTO 1510
  150. 1500  Y=ASC(Y$):IF Y=27 THEN 490 ELSE M1=M1-1:GOTO 1460
  151. 1510  GOSUB 1120:IF Y=72 THEN 1520 ELSE IF Y=80 THEN 1580 ELSE IF Y=77 THEN 1550 ELSE IF Y=75 THEN 1610 ELSE M1=M1-1:GOTO 1460
  152. 1520  IF A=6 THEN PRINT TAB(25)"You are in an East-West corridor":GOTO 1390
  153. 1530  IF (D-1)=0 THEN PRINT TAB(28)"You are at the North wall":GOTO 1690
  154. 1540  D=D-1:GOTO 1370
  155. 1550  IF A=5 THEN PRINT TAB(25)"You are in a North-South corridor":GOTO 1390
  156. 1560  IF (C+1)=9 THEN PRINT TAB(28)"You are at the East wall":GOTO 1690
  157. 1570  C=C+1:GOTO 1370
  158. 1580  IF A=6 THEN PRINT TAB(25)"You are in an East-West corridor":GOTO 1390
  159. 1590  IF (D+1)=9 THEN PRINT TAB(28)"You are at the South wall":GOTO 1690
  160. 1600  D=D+1:GOTO 1370
  161. 1610  IF A=5 THEN PRINT TAB(25)"You are in a North-South corridor":GOTO 1390
  162. 1620  IF (C-1)=0 THEN PRINT TAB(28)"You are at the West wall":GOTO 1690
  163. 1630  C=C-1:GOTO 1370
  164. 1640  IF K=1 THEN 1930
  165. 1650  BEEP:LOCATE 25,1:PRINT SP$;:COLOR 15:LOCATE 25,11:PRINT"You cannot exit the Time Zone, you don't have the Key of Time";:COLOR 7:SEC=2:GOSUB 1130:GOTO 1390
  166. 1660  BEEP:LOCATE 25,1:PRINT SP$;:COLOR 15:LOCATE 25,25:PRINT"Sorry, you are not at an Exit portal";:COLOR 7:SEC=2:GOSUB 1130:GOTO 1390
  167. 1670  GOSUB 1120:PRINT TAB(6)"You lost all your Gold and you are locked in this Time Zone forever." ' -----GOLD ZERO
  168. 1680  PRINT TAB(28)"Do you wish another game ? ";:GOSUB 1100:IF Y=1 THEN 1240 ELSE END
  169. 1690  BEEP:PRINT TAB(17)"You cannot pass through,  try another direction":GOTO 1390
  170. 1700  KT=INT(RND*9+1):GOSUB 1120:PRINT TAB(24)"You are in a glowing Time Portal"
  171. 1710  PRINT TAB(20)"the light is fading, the portal is Inactive":IF A=1 THEN RETURN ELSE 1730
  172. 1720  PRINT TAB(26)"You are in a dust filled portal":GOTO 1710
  173. 1730  PRINT TAB(22)"A fellow traveler is in this chamber"
  174. 1740  TD=INT(RND*10+1):G1=INT(RND*350+1):IF G-G1<0 THEN G1=G
  175. 1750  Y=INT(RND*8+1):IF Y<=6 THEN 1790
  176. 1760  PRINT TAB(11)"He is unfriendly and as he leaves he steals ";G1;" Gold pieces":SEC=2:GOSUB 1130
  177. 1770  G=G-G1:IF TD=5 AND K=0 THEN GOSUB  1120:PRINT TAB(18)"You search the chamber and find the Key of Time":K=1
  178. 1780  RETURN
  179. 1790  PRINT TAB(18)"He is friendly and gives you ";G1;" Gold pieces.":G=G+G1:IF TD=5 AND K=0 THEN SEC=1.5:GOSUB 1130:GOSUB 1120:PRINT TAB(18)"He also gives you the Key of Time":K=1:PRINT TAB(24)"and wishes you a safe journey home":SEC=1.5:GOSUB 1130
  180. 1800  RETURN
  181. 1810  GOSUB 1120:PRINT TAB(18)"You search the chamber and find the Key of Time":K=1:RETURN
  182. 1820  GOSUB 1120:PRINT TAB(15)"You enter a North-South corridor ";
  183. 1830  PRINT "thru a Secret door":PRINT TAB(23)"The door closes and locks behind you":RETURN
  184. 1840  GOSUB 1120:PRINT TAB(15)"You enter an East-West corridor ";:GOTO 1830
  185. 1850  GOSUB 1120:PRINT TAB(18)"You entered ..a Time Warp .. in this chamber" '-----TRAP
  186. 1860  TD=INT(RND*9+1):IF TD<8 THEN PRINT TAB(23)"Boy you're lucky it didn't activate":RETURN
  187. 1870  TT=1:PRINT TAB(30)"and it is Activated":SEC=2.2:GOSUB 1130
  188. 1880  ' ----------------------ACTIVATE TIME WARP
  189. 1890  C=INT(RND*8+1):D=INT(RND*8+1):G1=INT(RND*400+75):G=G-G1:IF G<1 THEN G=0
  190. 1900  GOSUB 1120:PRINT TAB(25)"You have been Teleported to an unknown":PRINT TAB(25)"location and you lost some of your Gold.":PRINT TAB(29)"You have ";G;" Gold pieces left":GOSUB 1320:RETURN
  191. 1910  GOSUB 1120:PRINT TAB(28)"You are at an Exit portal.":PRINT TAB(21)"The Key of Time is required to escape":RETURN
  192. 1920  GOSUB 1120:PRINT TAB(33)"Before you proceed":PRINT TAB(29)"you look on the ground and":PRINT TAB(32)"find the Key of Time":K=1:GOSUB 1320:GOTO 1510
  193. 1930  GOSUB 1120:PRINT TAB(26)"You enter the Exit portal and insert":PRINT TAB(30)"the Key of Time into the slot"
  194. 1940  PRINT TAB(31)"the machine begins to Buzz":SEC=2.5:GOSUB 1130
  195. 1950  CLS:LOCATE 6,23:PRINT "You found your way  back to the Present":PRINT:PRINT TAB(23)"and you have acquired";G;" Gold pieces":PRINT
  196. 1960  R=INT((G*CA-7000+1)/M1):PRINT:PRINT TAB(32)"Game Rating is ";R:PRINT:PRINT
  197. 1970  PRINT TAB(23)"You took ";M1;" turns to find the way out":PRINT:PRINT:PRINT TAB(23)"You answered ";CA;" Question(s) Correctly,":PRINT
  198. 1980  PRINT TAB(29)"out of ";TR;" Questions asked.":GOTO 1680
  199. 1990  ' --------------------START OF QUESTION ROUTINE
  200. 2000  GOSUB 1120:PRINT TAB(7)" You are in a . Time Warp . a Pulsating Blue Glow indicates Activation":SEC=1:GOSUB 1130
  201. 2010  Q=INT(RND*25+1):YY=VAL(B$(Q,1)):ID=VAL(B$(Q,3)):E$=B$(Q,8):GOSUB 1340:AD$=E$
  202. 2020  GOSUB 1120:TR=TR+1:MES$="You have arrived at the Year "+STR$(YY)+" in "+SUB$:R=21:GOSUB 1140
  203. 2030  PRINT TAB(13)"You must answer this Question to continue your journey":LOCATE 11,5,1:PRINT YY:GOSUB 1320
  204. 2040  GOSUB 1120:PRINT B$(Q,2):IF ID<>4 THEN 2120
  205. 2050  ' ------------RANDOM ORDER OF MULTIPLE CHOICE QUESTIONS
  206. 2060  Y=INT(RND*4+1):ON Y GOTO 2070,2080,2090,2100
  207. 2070  MES$="1--"+B$(Q,4)+"    2--"+B$(Q,5)+"    3--"+B$(Q,6)+"    4--"+B$(Q,7):Z(1)=4:Z(2)=5:Z(3)=6:Z(4)=7:GOTO 2110
  208. 2080  MES$="1--"+B$(Q,6)+"    2--"+B$(Q,4)+"    3--"+B$(Q,5)+"    4--"+B$(Q,7):Z(1)=6:Z(2)=4:Z(3)=5:Z(4)=7:GOTO 2110
  209. 2090  MES$="1--"+B$(Q,7)+"    2--"+B$(Q,5)+"    3--"+B$(Q,6)+"    4--"+B$(Q,4):Z(1)=7:Z(2)=5:Z(3)=6:Z(4)=4:GOTO 2110
  210. 2100  MES$="1--"+B$(Q,7)+"    2--"+B$(Q,5)+"    3--"+B$(Q,6)+"    4--"+B$(Q,4):Z(1)=7:Z(2)=5:Z(3)=6:Z(4)=4
  211. 2110  R=22:GOSUB 1140:PRINT
  212. 2120  PRINT "Question Type ";:ON ID GOTO 2140,2150,2170,2180
  213. 2130  ' ------TYPE OF QUESTION-MULTIPLE CHOICE,T/F,PEOPLE,PLACES AND THINGS
  214. 2140  PRINT "People, Places, or Things  ";:LINE INPUT E$:GOSUB 1340:GOTO 2220
  215. 2150  COLOR 31:PRINT "T";:COLOR 7:PRINT "rue or ";:COLOR 31:PRINT "F";:COLOR 7:PRINT "alse  ";
  216. 2160  Y$=INKEY$:IF Y$="T" OR Y$="t" THEN E$="T":GOTO 2210 ELSE IF Y$="F" OR Y$="f" THEN E$="F":GOTO 2210 ELSE 2160
  217. 2170  PRINT "Who am I (last name)  ";:LINE INPUT E$:GOSUB 1340:GOTO 2220
  218. 2180  PRINT "Multiple Choice  ";
  219. 2190  Y$=INKEY$:Y=VAL(Y$):IF Y=1 OR Y=2 OR Y=3 OR Y=4 THEN E$=B$(Q,Z(Y)):PRINT Y$;"  ";:GOSUB 1340:GOTO 2220 ELSE 2190
  220. 2200  LINE INPUT E$:E$=Y$+E$:GOSUB 1340:GOTO 2220
  221. 2210  AD$=LEFT$(AD$,1)
  222. 2220  G1=INT(RND*500+126):IF E$=AD$ THEN PRINT "Correct ";:CA=CA+1:G=G+G1:PRINT "You win ";G1;" Gold Pieces ";:SEC=1:GOSUB 1130:GOSUB 1120:RETURN
  223. 2230  G=G-G1:PRINT "Incorrect -- You Lose ";G1;" Pieces of Gold ":LOCATE 25,1:PRINT B$(Q,9);:SEC=4:GOSUB 1130:GOSUB 1120:LOCATE 25,1:PRINT SP$;:RETURN
  224. 2240  A(C,D)=INT(RND*2+1)
  225. 2250  SEC=2:GOSUB 1130:GOSUB 1120:CA=CA+1:IF K=1 THEN RETURN
  226. 2260  IF CA=K4 THEN GOSUB 1810:RETURN ELSE RETURN
  227. 2270  ZT=5
  228. 2280  X=INT(RND*8+1):Y=INT(RND*8+1):IF A(X,Y)<=2 THEN A(X,Y)=5:RETURN
  229. 2290  PRINT TAB(8)"On the wall is a Glowing Screen, below the screen is a Red Button"
  230. 2300  PRINT TAB(25)"Do you wish to Push the button ?":GOSUB 1100:IF Y<>1 THEN RETURN
  231. 2310  KT=INT(RND*8+1):KL=INT(RND*8+1)
  232. 2320  IF KT >7 THEN 2400 ELSE IF KT<=2 THEN 2390
  233. 2330  GOSUB 1120:PRINT TAB(11)"You are in a narrow corridor, there is a door on your right"
  234. 2340  KT=INT(RND*8+1):PRINT TAB(25)"Do you wish to open the door ?"
  235. 2350  GOSUB 1100:IF Y<>1 THEN RETURN
  236. 2360  IF KL>=7 THEN 2400 ELSE IF KL <=2 THEN 2390
  237. 2370  G1=INT(RND*200+26):G=G+G1
  238. 2380  GOSUB 1120:PRINT TAB(24)"The door opens, revealing a closet":PRINT TAB(26)"where you find ";G1;" Gold Pieces":RETURN
  239. 2390  PRINT TAB(29)"but the door is locked":RETURN
  240. 2400  LOCATE 23,15:PRINT "The door opens and suddenly everything begins to Spin":G7=INT(G/2):G1=INT(RND*G7+1):MM=INT(RND*20+1)
  241. 2410  SEC=2:GOSUB 1130:G=G-G1
  242. 2420  GOSUB 1120:PRINT TAB(20)"You are Timeported and returned instantly"
  243. 2430  PRINT TAB(13)"However you lost ";G1;" Gold Pieces and wasted ";MM;" moves":M1=M1+MM:GOSUB 1320:RETURN
  244. 2440  ' --------------------DRAWS GAME BOARD SQUARES
  245. 2450  R2=INT(A*0.41667+0.5):X$=STRING$(A-1,196):X1$=X$+CHR$(194)
  246. 2460  T1$=CHR$(218):FOR I=1 TO B-1:T1$=T1$+X1$:NEXT I:T1$=T1$+X$+CHR$(191)
  247. 2470  X$=STRING$(A-1,32):X1$=X$+CHR$(179):T2$=CHR$(179):FOR I=1 TO B:T2$=T2$+X1$:NEXT I
  248. 2480  X$=STRING$(A-1,196):X1$=X$+CHR$(197):T3$=CHR$(195):FOR I=1 TO B-1:T3$=T3$+X1$:NEXT I:T3$=T3$+X$+CHR$(180)
  249. 2490  X1$=X$+CHR$(193):T4$=CHR$(192):FOR I=1 TO B-1:T4$=T4$+X1$:NEXT I:T4$=T4$+X$+CHR$(217)
  250. 2500  CLS:C=(80-LEN(T2$))/2:R=R1:LOCATE R,C:PRINT T1$:FOR I=1 TO D*R2:PRINT TAB(C)T2$:NEXT I
  251. 2510  R=R1:FOR I=1 TO D-1:R=R+R2:LOCATE R,C:PRINT T3$:NEXT I:R=R+R2:LOCATE R,C:PRINT T4$
  252. 2520  LOCATE 9,1:COLOR 0,7:PRINT " Year you are in ":COLOR 7,0:LOCATE 9,66:COLOR 0,7:PRINT " You have ";:COLOR 7,0
  253. 2530  ' ------------------------SET PORT VARIABLES
  254. 2540  FOR X=1 TO 8:FOR Y=1 TO 8:A(X,Y)=INT(RND*6+1):NEXT Y:NEXT X ' -----SET UP PORTALS
  255. 2550  H=INT(RND*3+2):FOR N=1 TO H:X=INT(RND*8+1):Y=INT(RND*8+1):A(X,Y)=7:NEXT N ' ----- Traps
  256. 2560  FOR X=1 TO 8:FOR Y=1 TO 8:IF A(X,Y)=3 THEN B=B+1
  257. 2570  NEXT Y:NEXT X
  258. 2580  IF B>21 THEN 2600
  259. 2590  Q=20-B:FOR N=1 TO Q:X=INT(RND*8+1):Y=INT(RND*8+1):A(X,Y)=3:NEXT N ' ----- Question Port
  260. 2600  S=INT(RND*4+2):FOR N=1 TO S:X=INT(RND*8+1):Y=INT(RND*8+1):A(X,Y)=8:NEXT N '---- Exit portals
  261. 2610  RETURN
  262. 2620  Z$="":LOCATE ,,1
  263. 2630  Y$=INKEY$
  264. 2640  X=X+1
  265. 2650  IF X>32700 THEN X=-32700
  266. 2660  IF Y$="" OR LEN(Y$)>1 THEN 2630
  267. 2670  Y=ASC(Y$):IF Y=13 THEN RETURN
  268. 2680  IF Y=8 AND LEN(Z$)>0 THEN Z$=LEFT$(Z$,LEN(Z$)-1):PRINT CHR$(29);" ";CHR$(29);:GOTO 2630
  269. 2690  Z$=Z$+Y$:PRINT Y$;:GOTO 2630
  270. 2700  CLS:LOCATE 3,6:COLOR 15:PRINT "I N S T U C T I O N S    T I M E    T R A V E L    I N    H I S T O R Y":COLOR 7:RESTORE
  271. 2710  LOCATE 13,14:PRINT "Do you wish instructions to print on ";:COLOR 31:PRINT "S";:COLOR 7:PRINT "creen or ";:COLOR 31:PRINT "P";:COLOR 7:PRINT "rinter  ";
  272. 2720  Y$=INKEY$:IF Y$="" OR LEN(Y$)>1 THEN 2720
  273. 2730  IF Y$="S" OR Y$="s" THEN CON=1:PAGELEN = 18:GOTO 2790
  274. 2740  IF Y$="P" OR Y$="p" THEN CON=2:PAGELEN = 54:PRINT Y$:GOTO 2760
  275. 2750  GOTO 2720
  276. 2760  LOCATE 16,22:PRINT "Do you want to pause for paper change ";:Y$=INPUT$(1):IF Y$="Y" OR Y$="y" THEN PRI=1
  277. 2770  LOCATE 18,25:COLOR 15:PRINT "Is the Printer on and ready  (Y/N) ";
  278. 2780  Y$=INPUT$(1):IF Y$="Y" OR Y$="y" THEN 2800 ELSE 2780
  279. 2790  CLS:LOCATE 1,6:COLOR 15:PRINT "I N S T U C T I O N S    T I M E    T R A V E L    I N    H I S T O R Y":COLOR 7:PRINT STRING$(79,196):PRINT
  280. 2800  IF CON=2 THEN LPRINT TAB(11)"I N S T R U C T I O N S   T I M E  T R A V E L  I N    H I S T O R Y":LPRINT STRING$(79,95)
  281. 2810  FOR I= 1 TO PAGELEN
  282. 2820  READ A$
  283. 2830  IF A$="END" THEN 2870
  284. 2840  IF CON=1 THEN PRINT TAB(9)A$ ELSE LPRINT TAB(9)A$
  285. 2850  NEXT I:IF CON=2 THEN LPRINT CHR$(12)
  286. 2860  IF PRI=1 THEN LOCATE 25,28:PRINT "Press any key to continue  ";:Y$=INPUT$(1)
  287. 2870  IF CON=1 THEN LOCATE 25,28:PRINT "Press any key to continue ";:Y$=INPUT$(1):CLS:LOCATE 1,6:COLOR 15:PRINT "I N S T U C T I O N S    T I M E    T R A V E L    I N    H I S T O R Y":COLOR 7:PRINT STRING$(79,196):PRINT
  288. 2880  IF A$="END" THEN 490
  289. 2890  GOTO 2810
  290. 2900  DATA "   This is an Educational game using time travel and memory drill"  
  291. 2910  DATA "to teach history.  The program is  designed so that you can alter" 
  292. 2920  DATA "the questions to teach or memorize any history period or subject."
  293. 2930  DATA " "
  294. 2940  DATA "To  read  the  instructions on changing the  Question  and  Menu," 
  295. 2950  DATA "Press, 'G' then read the instructions contained in that program. "
  296. 2960  DATA " "
  297. 2970  DATA "   There are two ways of selecting the period you wish to  study." 
  298. 2980  DATA "You may have noticed on the menu that the first Period is printed" 
  299. 2990  DATA "inversed  and  that there is a more detailed explanation  at  the" 
  300. 3000  DATA "bottom of the screen.   By using the  arrow keys you can move the" 
  301. 3100  DATA "Inversed around the menu  and the explanation line will change to" 
  302. 3110  DATA "to suit the subject or period.  If you Press ENTER when a subject" 
  303. 3120  DATA "is inversed, you will automatically go to that period. The second" 
  304. 3130  DATA "method of selecting  the period you wish,  is to  Press the first" 
  305. 3140  DATA "Letter.  You will notice that the  first letter of each period is" 
  306. 3150  DATA "flashing and brighter then the rest of that line. This highlights" 
  307. 3160  DATA "the letter to be pressed."
  308. 3170  DATA " "
  309. 3180  DATA "    You will now be asked to Enter your  Name.  Your name is used" 
  310. 3190  DATA "many times in the  program to make it more  personal.  After your" 
  311. 3200  DATA "name  Press Enter,  then Enter the year.  You can use 83 or 1983," 
  312. 3210  DATA "both are acceptable."
  313. 3220  DATA " "
  314. 3230  DATA "   You will now be  transported  back in time to  study  the time" 
  315. 3240  DATA "period you have chosen. Your mission, if you choose to accept it," 
  316. 3250  DATA "is to find the Crystal Key of Time. It is imperative that the key" 
  317. 3260  DATA "be  found before  history is changed forever.   If the  key  gets" 
  318. 3270  DATA "into the wrong hands, it will change the balance of power, giving" 
  319. 3280  DATA "the key holder the power to control the world,  thus becoming the" 
  320. 3290  DATA "first world dictator. Once you have found the Crystal Key of time" 
  321. 3300  DATA "go to the nearest EP (Exit Portal) and return to the present." 
  322. 3310  DATA " "
  323. 3320  DATA "    You are given 1000 pieces of gold,  guard it well.  There are" 
  324. 3330  DATA "many  pitfalls  and  unfriendly  travelers that will  steal  your" 
  325. 3340  DATA "Gold.  There are also  friendly travelers  who may give you Gold." 
  326. 3350  DATA "You  can also win gold by answering History questions  correctly," 
  327. 3360  DATA "however, if you give the wrong answer you will lose gold. You  do" 
  328. 3370  DATA "not know what any portal holds.   It could be goodies or trouble." 
  329. 3380  DATA "To  move  you use the arrow keys,  as you pass through a  portal,"  
  330. 3390  DATA "the  computer  labels it for future reference.   The  labels  IA=" 
  331. 3400  DATA "Inactive  time portal,  FT= Fellow time traveler,   QP=  Question" 
  332. 3410  DATA "portal, NS=North South corridor (you can only move North or South" 
  333. 3420  DATA "EW= East West corridor, TW = Time warp portal (It will not always" 
  334. 3430  DATA "activate),  EP  =  Exit  portal (you will have to be at  an  Exit" 
  335. 3440  DATA "portal with the key of time to return to the present) and  lastly" 
  336. 3450  DATA "there is ED = Escape Door. Be careful of this one, it holds great" 
  337. 3460  DATA "rewards, gold, the key,  or hazards, you could be time warped and" 
  338. 3470  DATA "lose some of your gold. The door could also be locked."
  339. 3480  DATA " "
  340. 3490  DATA "   You may travel all over the time/space station without finding" 
  341. 3500  DATA "the key. It's there, you just did not see it, so go around again." 
  342. 3510  DATA " "
  343. 3520  DATA "  When you have  completed your  mission,  you will be  graded on" 
  344. 3530  DATA "your performance. The Number of questions answered correctly, the" 
  345. 3540  DATA "amount of gold you returned with and the number of moves taken."
  346. 3550  DATA " "
  347. 3560  DATA "                   Good Luck, you will need it"
  348. 3570  DATA "END"
  349.